package com.atde._05_behavioral_design_patterns.visitor;


/**
 * @BelongsProject: hsp_java_design_mode
 * @BelongsPackage: com.atde._05_behavioral_design_patterns.visitor
 * @Author: Del
 * @CreateTime: 2025-06-26  11:52
 * @Description: 访问者模式中具体元素角色（ConcreteElement）
 * 表示 “男人” 这一类对象，实现 accept 方法用于接受访问者对象的访问
 * 并调用访问者对应的处理方法（如 action.getManConclustion(this)）
 *
 * 说明：
 * 1. 这里我们使用到了 双分派，即首先先在客户端程序中，将具体状态作为参数传递 Woman 中（第一次分派）
 * 2. 然后 Woman 类调用作为参数的 “具体方法” 中方法 getWomanResult， 同时将自己（this）作为参数
 *    传入，完成第二次的分派
 * @Version: 1.0
 */
public class Man extends Person{
    @Override
    public void accept(Action action) {
        action.getManConclusion(this);
    }
}
